#python里如何赋值，深拷贝与浅拷贝的区别
# 序列解包赋值方法，序列解包是将多个赋值操作同时进行的方法：将多个值的序列解开，然后放到变量的序列中，
# a,b,c=1,2,3
# print(a)
# 链式赋值的方法，链式赋值是将同一个值赋给多个变量，有点像并行赋值
# x=y=1
# print(x)
# print(y)
# 增量赋值的方法，增量赋值就是将一个变量进行表达式后重新赋给变量，如x=x+1
# x=1
# x=x+1
# print(x)
# 深拷贝和浅拷贝：
#     浅拷贝可以使用列表自带的copy()函数（如list.copy()），或者使用copy模块的copy()函数。
#     深拷贝只能使用copy模块的deepcopy(),所以使用前要导入：from copy import deepcopy
#     如果拷贝的对象里的元素只有值，没有引用，那浅拷贝和深拷贝没有差别，都会将原有对象复制一份，产生一个新对象，对新对象里的值进行修改不会影响原有对象，新对象和原对象完全分离开。
#     如果拷贝的对象里的元素包含引用（像一个列表里储存着另一个列表，存的就是另一个列表的引用），那浅拷贝和深拷贝是不同的，浅拷贝虽然将原有对象复制一份，但是依然保存的是引用，所以对新对象里的引用里的值进行修改，依然会改变原对象里的列表的值，新对象和原对象完全分离开并没有完全分离开。而深拷贝则不同，它会将原对象里的引用也新创建一个，即新建一个列表，然后放的是新列表的引用，这样就可以将新对象和原对象完全分离开
# 区别：浅拷贝只是增加了一个指针指向已存在的内存地址，仅仅是指向被复制的内存地址，如果原地址发生改变，那么浅复制出来的对象也会相应的改变。深拷贝是增加了一个指针并且申请了一个新的内存，使这个增加的指针指向这个新的内存。